package com.solution.admin.customer.entity;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;

import com.solution.common.entity.BaseEntity;

/**
 * 客户信息实体类
 * @author solin
 * @date 2017-09-22 11:35:12
 */
public class CustomerEntity extends BaseEntity{
	private static final long serialVersionUID = -3926291988306842687L;
	
	/* 有效期过期时间 */
	private Date expDate;
	/* 地址 */
	private String address;
	/* 订单数量 */
	private int orderCount;
	/* 订单金额 */
	private BigDecimal totalOrderMoney;
	
	/**
	 * 登录帐号
	 */
	private String loginCode;
	
	/**
	 * 手机号
	 */
	private String mobile;
	
	/**
	 * 姓名
	 */
	private String userName;
	
	/**
	 * 密码
	 */
	private String password;
	
	/**
	 * 加密盐
	 */
	private String passwordSalt;
	
	/**
	 * 客户生日
	 */
	private Date birthday; 
	
	/**
	 * 性别
	 */
	private int gender; 
	
	/**
	 * QQ
	 */
	private String qqNumber;
	
	/**
	 * 邮箱
	 */
	private String email;
	
	/**
	 * 微信
	 */
	private String wechat;
	
	/**
	 * 微信openId
	 */
	private String openId;
	
	/**
	 * 所属单位
	 */
 	private Long companyId;
 	/**
 	 * 公司名称 
 	 */
 	private String companyName;
	
	/**
	 * 默认联系人员 1 默认 0 非默认
	 */
 	private int defaultFlag;
 	
 	/**
	 * 邀请码
	 */
	private String invitationCode; 
	
	/**
	 * 邀请者的邀请码
	 */
	private String parentInvitationCode; 
	
	/**
	 * 用户头像 
	 */
	private String headImage;
	
	/**
	 * 单位信息
	 */
	private CompanyEntity companyInfo;
	
	/**
	 * 客户类型信息 
	 */
	private CustomerTypeEntity customerTypeInfo;
	
	/**
	 * 客户等级信息 
	 */
	private CustomerLevelEntity customerLevelInfo;
	
	/**
	 * 市场等级信息 
	 */
	private MarketLevelEntity marketLevelInfo;
	
	/**
	 * 审核人
	 */
	private String auditor;
	
	/**
	 * 审核时间
	 */
	private Date auditTime;
	
	/**
	 * 审核备注
	 */
	private String auditRemark;
	
	
	/**
	 * 商品详情页面调价权限
	 */
	private String adjustPriceAuth;
	
	/**
	 * 自定义属性
	 */
	private List<CustomerExternalEntity> customerExternalInfo;
	
	/**
	 * 其他信息
	 */
	private Map<String, Object> extraInfo;
	
	
	/**
	 * 客户级别
	 */
	private String customerLevel;
	
	/**
	 * 登录帐号
	 */
	public String getLoginCode() {
		return loginCode;
	}
	public void setLoginCode(String loginCode) {
		this.loginCode=loginCode;
	}

	/**
	 * 手机号
	 */
	public String getMobile() {
		return mobile;
	}
	public void setMobile(String mobile) {
		this.mobile=mobile;
	}

	/**
	 * 姓名
	 */
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName=userName;
	}

	/**
	 * 密码
	 */
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password=password;
	}

	/**
	 * 加密盐
	 */
	public String getPasswordSalt() {
		return passwordSalt;
	}
	public void setPasswordSalt(String passwordSalt) {
		this.passwordSalt=passwordSalt;
	}

	/**
	 * 客户生日
	 */
	public Date getBirthday() {
		return birthday;
	}
	public void setBirthday(Date birthday) {
		this.birthday=birthday;
	}

	/**
	 * QQ
	 */
	public String getQqNumber() {
		return qqNumber;
	}
	public void setQqNumber(String qqNumber) {
		this.qqNumber=qqNumber;
	}

	/**
	 * 邮箱
	 */
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email=email;
	}

	/**
	 * 微信
	 */
	public String getWechat() {
		return wechat;
	}
	public void setWechat(String wechat) {
		this.wechat=wechat;
	}

	/**
	 * 所属单位
	 */
 	public Long getCompanyId() {
		return companyId;
	}
	public void setCompanyId(Long companyId) {
		this.companyId=companyId;
	}

	/**
	 * 默认联系人员 1 默认 0 非默认
	 */
 	public int getDefaultFlag() {
		return defaultFlag;
	}
	public void setDefaultFlag(int defaultFlag) {
		this.defaultFlag=defaultFlag;
	}

	public CompanyEntity getCompanyInfo() {
		return companyInfo;
	}
	public void setCompanyInfo(CompanyEntity companyInfo) {
		this.companyInfo = companyInfo;
	}
	public CustomerTypeEntity getCustomerTypeInfo() {
		return customerTypeInfo;
	}
	public void setCustomerTypeInfo(CustomerTypeEntity customerTypeInfo) {
		this.customerTypeInfo = customerTypeInfo;
	}
	public CustomerLevelEntity getCustomerLevelInfo() {
		return customerLevelInfo;
	}
	public void setCustomerLevelInfo(CustomerLevelEntity customerLevelInfo) {
		this.customerLevelInfo = customerLevelInfo;
	}
	public MarketLevelEntity getMarketLevelInfo() {
		return marketLevelInfo;
	}
	public void setMarketLevelInfo(MarketLevelEntity marketLevelInfo) {
		this.marketLevelInfo = marketLevelInfo;
	}
	public int getGender() {
		return gender;
	}
	public void setGender(int gender) {
		this.gender = gender;
	}
	public String getInvitationCode() {
		return invitationCode;
	}
	public void setInvitationCode(String invitationCode) {
		this.invitationCode = invitationCode;
	}
	public String getParentInvitationCode() {
		return parentInvitationCode;
	}
	public void setParentInvitationCode(String parentInvitationCode) {
		this.parentInvitationCode = parentInvitationCode;
	}
	public String getAuditor() {
		return auditor;
	}
	public void setAuditor(String auditor) {
		this.auditor = auditor;
	}
	public Date getAuditTime() {
		return auditTime;
	}
	public void setAuditTime(Date auditTime) {
		this.auditTime = auditTime;
	}
	public String getAuditRemark() {
		return auditRemark;
	}
	public void setAuditRemark(String auditRemark) {
		this.auditRemark = auditRemark;
	}
	public List<CustomerExternalEntity> getCustomerExternalInfo() {
		return customerExternalInfo;
	}
	public void setCustomerExternalInfo(List<CustomerExternalEntity> customerExternalInfo) {
		this.customerExternalInfo = customerExternalInfo;
	}
	public String getOpenId() {
		return openId;
	}
	public void setOpenId(String openId) {
		this.openId = openId;
	}
	public String getHeadImage() {
		return headImage;
	}
	public void setHeadImage(String headImage) {
		this.headImage = headImage;
	}
	public String getCompanyName() {
		return companyName;
	}
	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}
	public String getAdjustPriceAuth() {
		return adjustPriceAuth;
	}
	public void setAdjustPriceAuth(String adjustPriceAuth) {
		this.adjustPriceAuth = adjustPriceAuth;
	}
	public Date getExpDate() {
		return expDate;
	}
	public void setExpDate(Date expDate) {
		this.expDate = expDate;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	public int getOrderCount() {
		return orderCount;
	}
	public void setOrderCount(int orderCount) {
		this.orderCount = orderCount;
	}
	public BigDecimal getTotalOrderMoney() {
		return totalOrderMoney;
	}
	public void setTotalOrderMoney(BigDecimal totalOrderMoney) {
		this.totalOrderMoney = totalOrderMoney;
	}
	public Map<String, Object> getExtraInfo() {
		return extraInfo;
	}
	public void setExtraInfo(Map<String, Object> extraInfo) {
		this.extraInfo = extraInfo;
	}
	public String getCustomerLevel() {
		return customerLevel;
	}
	public void setCustomerLevel(String customerLevel) {
		this.customerLevel = customerLevel;
	}
}
